package com.linln.common.config;

import cn.binarywang.wx.miniapp.api.WxMaService;
import cn.binarywang.wx.miniapp.api.impl.WxMaServiceImpl;
import cn.binarywang.wx.miniapp.config.WxMaConfig;
import cn.binarywang.wx.miniapp.config.impl.WxMaDefaultConfigImpl;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringBootConfiguration;
import org.springframework.context.annotation.Bean;

/**
 * @Title: timo
 * @Package: com.linln.admin.config
 * @ClassName: WechatConfig
 * @Description: TODO
 * @Author: Viceroy
 * @Date: 2022/4/13 9:06 PM
 */

@SpringBootConfiguration
public class WechatConfig {

  @Value("${wechat.appid}")
  private String appId;

  @Value("${wechat.secret}")
  private String secret;

  @Bean
  public WxMaConfig wxMaConfig() {
    WxMaDefaultConfigImpl config = new WxMaDefaultConfigImpl();
    config.setAppid(appId);
    config.setSecret(secret);
    config.setMsgDataFormat("JSON");
    return config;
  }

  @Bean
  public WxMaService wxMaService(WxMaConfig maConfig) {
    WxMaService service = new WxMaServiceImpl();
    service.setWxMaConfig(maConfig);
    return service;
  }
}
